home *** CD-ROM | disk | FTP | other *** search
/ Collection of Internet / Collection of Internet.iso / protocol / standard / vga / video7.txt < prev    next >
Text File  |  1993-07-14  |  13KB  |  392 lines

  1.   Video 7 Super VGA.
  2.   Now Headland Technologies
  3.  
  4.     Earlier V7/Headland boards use Chips&Technologies and Cirrus chips.
  5.  
  6.     Board:    Chip:
  7.     V7VRAM    HT-208
  8.     V71024i   HT-208
  9.       ?       HT-216           
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  100h (R/W?): Microchannel ID low
  16.  bit 0-7  Card ID bit 0-7
  17.  
  18.  101h (R/W?): Microchannel ID high
  19.  bit 0-7  Card ID bit 8-15
  20.  
  21.  102h (R/W): Alt Video Subsystem Enable
  22.  bit 0  Enable Video if set
  23.     Must be armed by 3C4h index 0FCh bit 7
  24.     or in setup mode (46E8h bit4) to change.
  25.  
  26.  3C2h (W): Misc Output register
  27.  bit 5  Bit 1 of Bank no.
  28.  Note:  This register can be read at 3CCh.
  29.  
  30.  3C3h (R/W): Video Subsystem Enable
  31.  bit 0  Enable Microchannel Video if set
  32.     Must be armed by 3C4h index 0FCh bit 7 to change.
  33.  
  34.  3C4h index  6  (R/W): Extension Control
  35.  bit   0  (Read Only) Extensions enabled if set
  36.  bit 0-7  (Write Only) 0EAh Enables extensions, 0AEh disables.
  37.  
  38.  3C4h index  7  (R/W): Reset Horizontal Character Counter
  39.  
  40.  3C4h index 80h (R/W): Test
  41.  
  42.  3C4h index 81h (R/W): Test
  43.  
  44.  3C4h index 82h (R/W): Test
  45.  
  46.  3C4h index 83h (R/W): Attribute Control Index
  47.  
  48.  3C4h index 8Eh-8Fh (R): Chip Version
  49.  bit 0-7  Chip version:
  50.         80h-FFh: VEGA VGA Chip,
  51.         70h: V7VGA chip revision 1,2 or 3
  52.         71h: V7VGA chip revision 4
  53.         50h-59h: V7VGA Version 5
  54.         41h-49h: 1024i.
  55.  
  56.  3C4h index 94h (R/W): Pointer Pattern Address
  57.  bit 0-7  Bit 6-13 of the start address of the Pointer Pattern
  58.  
  59.  3C4h index 9Ch (R/W): Pointer Horizontal Position High
  60.  bit 0-2  Bit 8-10 of the X coordinate of the Pointer
  61.  
  62.  3C4h index 9Dh (R/W): Pointer Horizontal Position Low
  63.  bit 0-7  Bit 0-7 of the X coordinate of the Pointer
  64.  
  65.  3C4h index 9Eh (R/W): Pointer Vertical Position High
  66.  bit 0-1  Bit 8-9 of the Y coordinate of the Pointer
  67.  
  68.  3C4h index 9Fh (R/W): Pointer Vertical Position Low
  69.  bit 0-7  Bit 0-7 of the Y coordinate of the Pointer
  70.  
  71.  3C4h index A0h (R/W): GC Memory Latch 0
  72.  bit 0-7  Plane 0 Memory Latch Data
  73.  
  74.  3C4h index A1h (R/W): GC Memory Latch 1
  75.  bit 0-7  Plane 1 Memory Latch Data
  76.  
  77.  3C4h index A2h (R/W): GC Memory Latch 2
  78.  bit 0-7  Plane 2 Memory Latch Data
  79.  
  80.  3C4h index A3h (R/W): GC Memory Latch 3
  81.  bit 0-7  Plane 3 Memory Latch Data
  82.  
  83.  3C4h index A4h (R/W): Clock Select
  84.  bit 2-4  0: 25.175 MHz
  85.       1: 28.322 MHz
  86.       2: 30.000 MHz
  87.       3: 32.514 MHz
  88.       4: 34.000 MHz
  89.       5: 36.000 MHz
  90.       6: 38.000 MHz
  91.       7: 40.000 MHz    
  92.  
  93.  3C4h index A5h (R/W): Cursor Attributes
  94.  bit 0  Cursor blink enabled if clear
  95.      3  Text Cursor Mode is XOR if set, Replace if clear
  96.      7  Graphics Cursor Enabled if set
  97.  
  98.  3C4h index B0h-BFh (R/W): Scratch Registers
  99.  bit 0-7  Scratch
  100.  
  101.  3C4h index E0h (R/W): Miscellaneous Control      (Version 4+)
  102.  bit 0-3 Reserved
  103.        4  Interlaced
  104.      5-6  Reserved
  105.        7  Enables Split Bank Mode
  106.  
  107.  3C4h index E8h (R/W): Single/Write Bank Register (Version 4+)
  108.  bit 4-7  Single/Write Bank no.
  109.  
  110.  3C4h index E9h (R/W): Read Bank Register         (Version 4+)
  111.  bit 4-7  Read Bank no.
  112.       Only Active if Split mode enabled (3C4h index E0h bit 7)
  113.  
  114.  3C4h index EAh (W): Switch Strobe
  115.  Note:  A write to this register copies the switch positions to
  116.     the Switch Readback Register (3C4h index F7h).
  117.  
  118.  3C4h index EBh (R/W): Emulation Control
  119.  
  120.  3C4h index ECh (R/W): Foreground Latch 0
  121.  bit 0-7  Foreground Latch for plane 0. When in Dither Foreground mode
  122.       (3C4h index FEh bit 2-3 = 2) the data in this register
  123.       replaces the data written from the processor.
  124.  
  125.  3C4h index EDh (R/W): Foreground Latch 1
  126.  bit 0-7  Foreground Latch for plane 1.
  127.  
  128.  3C4h index EEh (R/W): Foreground Latch 2
  129.  bit 0-7  Foreground Latch for plane 2.
  130.  
  131.  3C4h index EFh (R/W): Foreground Latch 3
  132.  bit 0-7  Foreground Latch for plane 3.
  133.  
  134.  3C4h index F0h (R/W): Fast Foreground Latch Load
  135.  bit 0-7  The Foreground Latches (3C4h index ECh to EFh) for the four
  136.       memory planes can be loaded by writing to this register.
  137.       The writes will cycle through planes 0-3.
  138.       A read will restart at plane 0.
  139.  
  140.  3C4h index F1h (R/W): Fast Latch Load State
  141.  bit 0-1  Background Latch Load State. Determines which of the
  142.       four memory latches will be loaded by a write to 3C4h
  143.       index F2h. Each write to index F2h will increment this
  144.       value and each read from index F2h will reset it to 0.
  145.      2-3  Unused
  146.      4-5  Foreground Latch Load State. Determines which of the
  147.       four Foreground latches (3C4h index ECh to EFh) will
  148.       be loaded by the next write to 3C4h index F0h.
  149.       Each write to index F0h will increment this value
  150.       and each read from index F0h will reset it to 0.
  151.      6-7  Unused
  152.  
  153.  3C4h index F2h (R/W): Fast Background Latch Load
  154.  bit 0-7  The Memory Data Latches for the four memory planes can be
  155.       loaded by writing to this register. The writes will cycle
  156.       through planes 0-3. A read will restart at plane 0.
  157.  
  158.  3C4h index F3h (R/W): Masked Write Control   (Only with VRAM)
  159.  bit 0  Enables Masked Writes if set
  160.      1  If set rotated CPU byte is used as WriteMask, else
  161.     Masked Write Mask register is used.
  162.  
  163.  3C4h index F4h (R/W): Masked Write Mask      (Only with VRAM)
  164.  bit 0-7  If Masked Writes enabled by 3C4h index F3h bit 0
  165.       Only the bits set here will be updated in Video memory.
  166.  
  167.  3C4h index F5h (R/W): Foreground/Background Pattern
  168.  bit 0-7
  169.  
  170.  3C4h index F6h (R/W): 1MB RAM Bank Select
  171.  bit 0-1  Write Bank no bit 2-3 if 256 color, bit 0-1 else.
  172.      2-3  Read Bank no bit 2-3 if 256 color, bit 0-1 else.
  173.      4-5  CRTC Bank (Address bit 16-17)
  174.        6  Display address Wraps Around at bank boundary if set
  175.        7  Split Screen Wraps around at bank boundary if set
  176.  
  177.  3C4h index F7h (R/W): Switch Readback
  178.  bit 0-7  Switch positions as read by the last write to the Switch
  179.       Strobe Register (3C4h index EAh)
  180.  
  181.  3C4h index F8h (R/W): Extended Clock Control
  182.  bit 5-7  Clock Source:
  183.         0: 25.175 MHz
  184.         1: 28.322 MHz
  185.         2: 30.000 MHz
  186.         3: 32.514 MHz
  187.         4: 34.000 MHz
  188.         5: 36.000 MHz
  189.         6: 38.000 MHz
  190.         7: 40.000 MHz
  191.  Note: depending on mode and other bits in this register other
  192.        values may be selected.
  193.  
  194.  3C4h index F9h (R/W): Page Select
  195.  bit 0  bit 16 of Video Memory Address. (Only needed if in a
  196.     256 color mode, and 3C4h index FCh bit 1-2 = 1).
  197.  
  198.  3C4h index FAh (R/W): Extended Foreground Color
  199.  bit 0-3  Foreground expansion color.
  200.       Bit 0 is written to plane 0 et cetera.
  201.  
  202.  3C4h index FBh (R/W): Extended Background Color
  203.  bit 0-3  Background expansion color
  204.       Bit 0 is written to plane 0 et cetera.
  205.  
  206.  3C4h index FCh (R/W): Compatibility Control
  207.  bit 0  Enable Extended Attribute functions if set
  208.     Extended attributes allows underlining using a mask
  209.     in plane 3 for each character.
  210.      1  256-Color Paging Enabled if set.
  211.      2  256-Color 64K/128K paging Select.
  212.     128K pages if set, 64K pages else.
  213.    3-6  Reserved.
  214.      7  If set allows enabling VGA via 102h bit 0 or 3C3h bit 0.
  215.  
  216.  3C4h index FDh (R/W): Extended Timing Select
  217.  
  218.  3C4h index FEh (R/W): Foreground/Background Control
  219.  bit 0  Unused
  220.      1  Foreground/background source select
  221.     Source is CPU data if set, 3C4h index F5h else.
  222.    2-3  Foreground/background mode select
  223.       0  Standard VGA mode
  224.       1  Color Expansion Mode
  225.          A monochrome bitmap is expanded to color.
  226.          For each bit of of data written from the processor
  227.          a zero bit causes the background color (3C4h index FBh)
  228.          to be written in the corresponding pixel, and a 1 bit
  229.          causes the foreground color (3C4h index FAh) to be written.
  230.       2  Dithered foreground. The data from the processor is
  231.          replaced by data from four Foreground Latches (3C4h index
  232.          ECh to EFh). The normal VGA Read Latches function as normal.
  233.       3  Invalid
  234.     4-7  Unused
  235.  
  236.  3C4h index FFh (R/W): 16 bit Interface Control
  237.  bit 0  16 bit memory if set
  238.      1  16 bit I/O if set
  239.      2  Fast Write Enabled if set
  240.      3  16 bit ROM access if set
  241.      4  Enable bank selection
  242.    5-6  Cursor Pattern Page Select
  243.      7  (Read only) Card in 8 or 16 bit slot
  244.  
  245.  3d4h index 1Fh (R): Identification register
  246.  bit 0-7  Returns bit 0-7 of the Start Address High Register
  247.       (3d4h index 0Ch) xored with 0EAh.
  248.  
  249.  3d4h index 22h (R): Graphics Controller Data Latch
  250.  bit 0-7  Data from one of 4 bit-planes selected through the
  251.       RMS field of the Read Map Select Register (3CEh index 4)
  252.  
  253.  3d4h index 24h (R): Graphics Controller Data
  254.  bit 0-4  Attribute Index. Same as 3C1 bit 0-4.
  255.        5  Palette source.  Same as 3C1h bit 5
  256.        7  Does the Attribute Controller point to Index or Data .
  257.  
  258.  3d4h index 30h-3Fh (W): Clear Vertical Display
  259.  bit 0  if set speeds up video memory access by increasing the
  260.     vertical Retrace Period.
  261.  
  262.  
  263.  46E8h (W): Rom Map & Video Subsystem
  264.  bit 0-2  Enable VGA PC/AT
  265.        3  Enable VGA PC/AT if set
  266.        4  Enter VGA Setup Mode if set
  267.       In Setup Mode only registers 102h, 3C3h and 46E8h
  268.       are active.
  269.  
  270.  
  271.     4BC4h,4BC5 used.
  272.  
  273.  
  274.   Bank Select:
  275.  
  276.     Two methods exists:
  277.  
  278.     All models can use method 1:
  279.       For 2 and 4 color modes bit 16 of the address is in 3C2h bit 5.
  280.  
  281.       For 16 color modes separate read and write banks can be selected
  282.       through 3C4h index F6h.
  283.  
  284.       For 256 color modes the bank fields in 3C4h index F6h select
  285.       bit 18&19 of the video memory address.
  286.       Bit 16 is selected through 3C4h index F9h bit 0.
  287.       Bit 17 is selected through Miscellaneous Output Register
  288.          (3C2h/3CCh bit 5).
  289.       Bit 16&17 are shared by read and write operations.
  290.  
  291.     For Version 5 and above separate bank registers are available.
  292.     Both read and write banks exists.
  293.  
  294.  
  295.   ID Video 7 VGA Chip Set:
  296.  
  297.     vio($6F00);
  298.     if rp.bx=$5637 then
  299.     begin
  300.       vio($6F07);
  301.       case rp.bl of
  302.     $80..$FF: VEGA_VGA;
  303.     $70..$7F:V7VGA_FASTWRITE/VRAM; {Revision 3}
  304.     $50..$59:V7VGA_Version5;
  305.     $41..$49:Video7_1024i;
  306.       end;
  307.     end;
  308.  
  309.  
  310.   Video Modes:
  311.     40h  T   80   43   2
  312.     41h  T  132   25   2
  313.     42h  T  132   43   2
  314.     43h  T   80   60  16
  315.     44h  T  100   60  16
  316.     45h  T  132   28  16
  317.  
  318.     60h  G  752  410  16 planar
  319.     61h  G  720  540  16 planar
  320.     62h  G  800  600  16 planar
  321.     63h  G 1024  768   2 planar
  322.     64h  G 1024  768   4 planar odd/even
  323.     65h  G 1024  768  16 planar
  324.     66h  G  640  400 256 packed    V1024 w/VRAM
  325.     67h  G  640  480 256 packed
  326.     68h  G  720  540 256 packed    VRAM only
  327.     69h  G  800  600 256 packed    VRAM only
  328.     6Ah  G 1024  768 256 packed
  329.  
  330.  
  331.   BIOS extensions:
  332.  
  333. ----------106F00-----------------------------
  334. INT 10 - VIDEO - INSTALLATION CHECK (Video7 VGA,VEGA VGA)
  335.     AX = 6F00h
  336. Return: BX = 5637h ('V7') indicates Video7 VGA/VEGA VGA extensions are present
  337. ----------106F01-----------------------------
  338. INT 10 - VIDEO - GET MONITOR INFO (Video7 VGA,VEGA VGA)
  339.     AX = 6F01h
  340. Return: AL = monitor type code (VEGA VGA only)
  341.     AH = status register information
  342.          bit  0 = display enable
  343.               0 = display enabled
  344.               1 = vertical or horizontal retrace in progress
  345.          bit  1 = light pen flip flop set
  346.          bit  2 = light pen switch activated
  347.          bit  3 = vertical retrace if set
  348.          bit  4 = monitor resolution
  349.               0 = high resolution (>200 lines)
  350.               1 = low resolution (<=200 lines)
  351.          bit  5 = display type
  352.               0 = color
  353.               1 = monochrome
  354.          bits6,7= diagnostic bits
  355. Note: bits 0-3 are the same as the EGA/VGA status register bits 0-3
  356. ----------106F04-----------------------------
  357. INT 10 - VIDEO - GET MODE AND SCREEN RESOLUTION (Video7 VGA, VEGA VGA)
  358.     AX = 6F04h
  359. Return: AL = current video mode (see AX=6F05h)
  360.     BX = horizontal columns (text) or pixels (graphics)
  361.     CX = vertical columns (text) or pixels (graphics)
  362. SeeAlso: AX=6F05h
  363. ----------106F05-----------------------------
  364. INT 10 - VIDEO - SET VIDEO MODE (Video7 VGA, VEGA EXTENDED EGA/VGA)
  365.     AX = 6F05h
  366.     BL = mode (see below)
  367. SeeAlso: AH=00h,AX=0070h
  368.  
  369. Values for video mode:
  370.  00h-13h = standard IBM modes (see AH=00h)
  371.  40h-6Ah = see table above.
  372.  
  373. SeeAlso: AH=00h,AX=0070h,AX=007Eh,AX=6F04h
  374. ----------106F06-----------------------------
  375. INT 10 - VIDEO - SELECT AUTOSWITCH MODE (V7VGA,VEGA VGA)
  376.     AX = 6F06h
  377.     BL = Autoswitch mode select
  378.          00h select EGA/VGA-only modes
  379.          01h select Autoswitched VGA/EGA/CGA/MGA modes
  380.          02h select 'bootup' CGA/MGA modes
  381. BH = enable/disable (00h enable, 01h = disable selection)
  382. ----------106F07-----------------------------
  383. INT 10 - VIDEO - GET VIDEO MEMORY CONFIGURATION (V7VGA,VEGA VGA)
  384.     AX = 6F07h
  385. Return: AL = 6Fh
  386.     AH = bits 0-6 = number of 256K blocks of video memory
  387.          bit 7    = DRAM/VRAM (0: DRAM, 1: VRAM)
  388.     BH = chip revision (SR8F) (S/C Chip in VEGA VGA)
  389.     BL = chip revision (SR8E) (G/A Chip in VEGA VGA)
  390.     CX = 0000h
  391. SeeAlso: AH=12h/BL=10h
  392.